-
Notifications
You must be signed in to change notification settings - Fork 84
[ViPPET] Add new retail predefined pipelines #1607
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
… counting and replacement
…tection with new input files and descriptions
This reverts commit 151202e.
…unter to the end to measure end-to-end FPS
…ndled by DLStreamer's gvafpscounter
…iction in definitions
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull request overview
This pull request refactors the pipeline loading mechanism to use individual .yaml config files instead of directories and adds several new retail analytics pipeline configurations for CPU, GPU, and NPU. It also updates tests, removes unused scripts, and adds video resources.
Changes:
- Refactored
PipelineLoaderto work with.yamlfiles directly instead of pipeline directories, simplifying discovery and configuration loading - Added 9 new retail pipeline configuration files for face detection/age-gender recognition, YOLO 11n object detection, and EfficientNet B0 classification across CPU, GPU, and NPU
- Updated test suite to reflect file-based pipeline loading
- Removed 3 unused retail-related Python scripts and added 2 new video resources for testing
Reviewed changes
Copilot reviewed 20 out of 36 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| vippet/pipelines/loader.py | Refactored to list and load pipeline configs from .yaml files instead of directories |
| vippet/managers/pipeline_manager.py | Updated to use config paths instead of pipeline names |
| vippet/tests/loader_test.py | New test file for file-based pipeline loader |
| vippet/tests/loader.py | Deleted old directory-based loader tests |
| vippet/video_encoder.py | Enhanced fakesink replacement logic to handle embedded property values |
| vippet/pipelines/*.yaml | Added 9 new retail pipeline configurations for various device types |
| ui/src/pages/Home.tsx | Added image imports for new pipelines |
| shared/videos/default_recordings.yaml | Added video resources for object classification and age prediction |
| shared/scripts/*.py | Removed unused barcode and OCR processing scripts |
| shared/models/supported_models.yaml | Enabled NPU support for efficientnet-b0 and yolo11n models |
💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.
Description
This pull request refactors the pipeline loading mechanism to use individual
.yamlconfig files for pipelines instead of directories, and adds several new retail analytics pipeline configurations for both CPU and GPU. It also updates the test suite to reflect these changes and adds a new video resource for object classification. The most important changes are grouped below:Pipeline Loader Refactor:
PipelineLoaderinloader.pyto list pipeline config.yamlfiles instead of directories, removed the pipeline name validation logic, and updated the config loading method to accept file paths directly. This simplifies pipeline discovery and loading.PipelineManagerto work with the new config path-based pipeline loading.New Retail Pipeline Configurations:
Testing Updates:
tests/loader.pywith a new one intests/loader_test.pyto test the new file-based pipeline loader logic. [1] [2]Video Resource Update:
default_recordings.yamlto support the new retail pipelines.Checklist: